在建構 ML 系統時,定義目標是整個專案的核心,不過問題往往相當複雜。為了將目標有效地融入系統的設計中,今天我們將介紹常見的五大類方法,包含調整損失函數、調整決策閾值、樣本重新採樣、自訂評估指標、自訂模型結構。
我們在昨天討論到整個 MLOps 的核心是定義問題,也提到在定義問題時,需求面可能包含不只一方的要求,也就是說,不同方對於「成功的模型」存在不統一的期待。我們也需要考慮資料面的問題,畢竟如果沒有良好的資料,就不用考慮進一步實作的問題了。關鍵特徵是怎麼分布的呢?我們是否需要處理資料集不平衡的問題?
我們需要以 ML 的角度嘗試解讀所有的需求,然後將確立的目標轉換到模型中,常見的做法包含:
根據預測目標的具體需求,尋找最適合或乾脆自己定義評估指標。舉例來說,如果我們的目標是偵測一個群體是否罹患某致死機率極高的疾病,我們的目標就是竭盡全力降低偽陰性的數量,也因此我們的重點評估指標應該會是召回率,而非精確度。
常見的指標意義可以進一步參考這篇文章。
以上介紹的部分方法常用來處理資料不平衡的問題,下面推薦的這篇論文就介紹了前述提到的部分方法可以如何用來處理不平衡的資料集。
論文:A Systematic Review on Imbalanced Learning Methods in Intelligent Fault Diagnosis
這是一篇 Review 類型的論文。它設定的情境是當我們在做異常檢測的時候,通常大多數的資料都會是正常的,可以想像,在工廠裡,機器故障的時間不會和正常運作的時間一樣多,這就是為什麼我們取得的資料集會有嚴重不平衡的問題。
在它框定的情境下,它分類並介紹了常見的解決方法,如果有進一步研究的需求,可以透過這篇論文快速檢索符合需求的其他論文。